﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200111F RID: 4383
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class ServerAnnounceNotify : IMessage<ServerAnnounceNotify>, IMessage, IEquatable<ServerAnnounceNotify>, IDeepCloneable<ServerAnnounceNotify>, IBufferMessage
	{
		// Token: 0x1700378C RID: 14220
		// (get) Token: 0x0600C435 RID: 50229 RVA: 0x00212AA1 File Offset: 0x00210CA1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<ServerAnnounceNotify> Parser
		{
			get
			{
				return ServerAnnounceNotify._parser;
			}
		}

		// Token: 0x1700378D RID: 14221
		// (get) Token: 0x0600C436 RID: 50230 RVA: 0x00212AA8 File Offset: 0x00210CA8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return ServerAnnounceNotifyReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x1700378E RID: 14222
		// (get) Token: 0x0600C437 RID: 50231 RVA: 0x00212ABA File Offset: 0x00210CBA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return ServerAnnounceNotify.Descriptor;
			}
		}

		// Token: 0x0600C438 RID: 50232 RVA: 0x00212AC1 File Offset: 0x00210CC1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ServerAnnounceNotify()
		{
		}

		// Token: 0x0600C439 RID: 50233 RVA: 0x00212AD4 File Offset: 0x00210CD4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ServerAnnounceNotify(ServerAnnounceNotify other) : this()
		{
			this.announceDataList_ = other.announceDataList_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600C43A RID: 50234 RVA: 0x00212AFE File Offset: 0x00210CFE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ServerAnnounceNotify Clone()
		{
			return new ServerAnnounceNotify(this);
		}

		// Token: 0x1700378F RID: 14223
		// (get) Token: 0x0600C43B RID: 50235 RVA: 0x00212B06 File Offset: 0x00210D06
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<AnnounceData> AnnounceDataList
		{
			get
			{
				return this.announceDataList_;
			}
		}

		// Token: 0x0600C43C RID: 50236 RVA: 0x00212B0E File Offset: 0x00210D0E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as ServerAnnounceNotify);
		}

		// Token: 0x0600C43D RID: 50237 RVA: 0x00212B1C File Offset: 0x00210D1C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(ServerAnnounceNotify other)
		{
			return other != null && (other == this || (this.announceDataList_.Equals(other.announceDataList_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600C43E RID: 50238 RVA: 0x00212B50 File Offset: 0x00210D50
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.announceDataList_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600C43F RID: 50239 RVA: 0x00212B84 File Offset: 0x00210D84
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600C440 RID: 50240 RVA: 0x00212B8C File Offset: 0x00210D8C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600C441 RID: 50241 RVA: 0x00212B95 File Offset: 0x00210D95
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.announceDataList_.WriteTo(ref output, ServerAnnounceNotify._repeated_announceDataList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600C442 RID: 50242 RVA: 0x00212BBC File Offset: 0x00210DBC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.announceDataList_.CalculateSize(ServerAnnounceNotify._repeated_announceDataList_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600C443 RID: 50243 RVA: 0x00212BF5 File Offset: 0x00210DF5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(ServerAnnounceNotify other)
		{
			if (other == null)
			{
				return;
			}
			this.announceDataList_.Add(other.announceDataList_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600C444 RID: 50244 RVA: 0x00212C23 File Offset: 0x00210E23
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600C445 RID: 50245 RVA: 0x00212C2C File Offset: 0x00210E2C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 18U)
				{
					this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				}
				else
				{
					this.announceDataList_.AddEntriesFrom(ref input, ServerAnnounceNotify._repeated_announceDataList_codec);
				}
			}
		}

		// Token: 0x04004F2A RID: 20266
		private static readonly MessageParser<ServerAnnounceNotify> _parser = new MessageParser<ServerAnnounceNotify>(() => new ServerAnnounceNotify());

		// Token: 0x04004F2B RID: 20267
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004F2C RID: 20268
		public const int AnnounceDataListFieldNumber = 2;

		// Token: 0x04004F2D RID: 20269
		private static readonly FieldCodec<AnnounceData> _repeated_announceDataList_codec = FieldCodec.ForMessage<AnnounceData>(18U, AnnounceData.Parser);

		// Token: 0x04004F2E RID: 20270
		private readonly RepeatedField<AnnounceData> announceDataList_ = new RepeatedField<AnnounceData>();
	}
}
